﻿
namespace RIA.Web.Models
{
	using System;
	using System.Collections.Generic;
	using System.ComponentModel;
	using System.ComponentModel.DataAnnotations;
	using System.Data.Objects.DataClasses;
	using System.Linq;
	using System.ServiceModel.DomainServices.Hosting;
	using System.ServiceModel.DomainServices.Server;


	// The MetadataTypeAttribute identifies CustomerMetadata as the class
	// that carries additional metadata for the Customer class.
	[MetadataTypeAttribute(typeof(Customer.CustomerMetadata))]
	public partial class Customer
	{

		// This class allows you to attach custom attributes to properties
		// of the Customer class.
		//
		// For example, the following marks the Xyz property as a
		// required property and specifies the format for valid values:
		//    [Required]
		//    [RegularExpression("[A-Z][A-Za-z0-9]*")]
		//    [StringLength(32)]
		//    public string Xyz { get; set; }
		internal sealed class CustomerMetadata
		{

			// Metadata classes are not meant to be instantiated.
			private CustomerMetadata()
			{
			}

			public string Address { get; set; }

			public string City { get; set; }

			public string CompanyName { get; set; }

			public string ContactName { get; set; }

			public string ContactTitle { get; set; }

			public string Country { get; set; }

			public EntityCollection<CustomerDemographic> CustomerDemographics { get; set; }

			public string CustomerID { get; set; }

			public string Fax { get; set; }

			public EntityCollection<Order> Orders { get; set; }

			public string Phone { get; set; }

			public string PostalCode { get; set; }

			public string Region { get; set; }
		}
	}
}
